﻿namespace Reactor.Messaging
{
    /// <summary>
    /// Interface for handling messages delivered from the service bus.
    /// </summary>
    /// <typeparam name="T"></typeparam>
    public interface IMessageHandler<T> where T : class 
    {
        /// <summary>
        /// Handles the message.
        /// </summary>
        /// <param name="message">The message.</param>
        /// <param name="messageContext">Context provided with message deliver</param>
        void Handle(T message, IMessageContext messageContext);
    }
}
